#

| Chapter 4 The Bourne Shell and Korn Shell |

## select

    select x [in list]
    do
         commands
    done

Korn shell only. Display a list of menu items on standard error, numbered in the order they are specified in `list`. If no `list` is given, items are read from the command line (via "$@"). Following the menu is a prompt string (set by PS3). At the PS3 prompt, users select a menu item by typing its line number, or they redisplay the menu by typing RETURN. (User input is stored in the environment variable REPLY.) If a valid line number is typed, `commands` are executed.

### Example

>     PS3="Select the item number:"
>     select event in Format Page View Exit
>     do
>        case "$event" in
>          Format) nroff $file | lp;;
>          Page)   pr $file | lp;;
>          View)   cat $file
>          Exit)   exit 0;;
>          *   )   echo "Invalid selection";;
>        esac
>     done

The output of this script would look like this:

>     1. Format
>     2. Page
>     3. View
>     4. Exit
>     Select the item number:

Reference: return |  | Reference: set